The present invention relates to the communication of graphic image files to an imaging device such as a color copier, laser printer, image recorder or the like, and more particularly to an interface for processing and forwarding rasterized image data to the imaging device in an efficient and orderly manner.
In computer generated image recording, a plurality of computer generated images are rasterized for input to a color copier, laser printer or the like or for exposing corresponding frames of photographic film or another imaging substrate. The copier, printer or film recorder (referred to herein as an "imaging device" or "output device") processes the rasterized image data to provide, e.g., paper copies, transparencies, color slides or motion picture footage containing images represented by the image data.
To obtain the computer generated images, a user first generates a graphic image file using a computer graphics program. The graphic image file may include one or more images or frames of image data which, for example, are in a bit mapped or text (e.g., ASCII) format. The image data are processed by a raster image processor (RIP) which provides frames of raster image data for use by an output device in generating images. The output device may comprise, for example, a color copier, a laser printer, or a photographic film recorder. Film recorders, such as those sold under the Solitaire.RTM. and Sapphire.RTM. trademarks by Management Graphics, Inc. of Minneapolis, Minn., USA are well known in the art. Color copiers, such as those manufactured by Xerox Corporation and laser printers, such as those manufactured by Hewlett-Packard Corporation are also well known.
In the past, during use of such an image generation and recording system, the RIP would send one page or frame of image data at a time to an output device that would then generate the image. This resulted in inefficient use of the output device, as the processing time associated with generating an image by the output device remained relatively constant while the time required to produce a page or frame of raster image data varied with the complexity of the image. It would not be unusual for the output device to spend considerable time in an idle mode when complex images were being processed by the RIP. At other times, the RIP would be idle because the output device was already busy. There was no way to minimize the idle periods and keep both the RIP and output devices as busy as possible.
In systems where many computers communicate over a network, a plurality of different users may compete for the use of a graphic output device. Because of the extensive processing time often required to generate raster image data, inefficient use of the output devices available via the network sometimes results in an unacceptable response time for one or more of the various users. Further, to process different graphic image files for different output devices and end user requirements, a plurality of different RIP modules may be needed for generating raster image data. Examples of different available RIP modules include those known as "PostScript," "Targa," and "TIFF."
A system for managing the processing of graphic image data by different RIPs and different output devices is disclosed in commonly assigned, copending U.S. patent application Ser. No. 08/246,795 filed on May 20, 1994, entitled "Apparatus for Managing Rasterization of Graphic Image Files" and incorporated herein by reference. The system disclosed therein minimizes the amount of time that the RIPs and output devices are idle, and keeps these devices as busy as possible. The system also enables different graphic image files to be processed by the same or different RIPs and routed to the same or different output devices in an orderly and efficient manner. Multiple instances of the same RIP, implemented by a RIP software module, can be run in parallel to concurrently process different graphic image files for the same or different output devices.
A problem not specifically addressed by the prior system is that some output devices cannot immediately start generating output when the graphic image server is ready to send the rasterized image data. For example, imaging devices such as color copiers and laser printers have a startup delay (i.e., a delayed "first copy out" time) even when warmed up. This delay is necessary to allow mechanical parts to be brought up to speed and to enable certain preliminary processes to occur, such as adjusting lenses, cleaning a photoreceptive drum, or agitating developer and toner to develop a sufficient triboelectric charge. In addition, devices such as color copiers may only be able to start a first copy at a specific point in a mechanical cycle, and it is necessary to wait for the parts to reach the proper point before commencing imaging of the first page of a copying run. If the imaging device finishes one page before the next is ready for printing, the device will revert to an idle state, and the delayed first copy out sequence will have to be repeated for the next image. Such delays will occur if the imaging device has to wait to receive the next image from the graphic image server, which may often be the case. The processing of a single page at a time by a photocopier or other imaging device can significantly reduce the production rate of multiple image files, e.g., on the order of a 50% reduction from the maximum possible throughput. In order to manage the flow of rasterized image data to an imaging device, an output queue or buffer may be used to hold a plurality of rasterized image files. These files can be output to the imaging device on an as needed basis, to keep the imaging device running (as opposed to idling) as much as possible. However, a substantial amount of storage space (e.g., hard disk and/or random access memory) is required to store a plurality of rasterized image files for subsequent output to an imaging device. A full 8.5".times.11" cyan-yellow-magenta-black (CYMK) color image page consumes about sixty-four megabytes (MB) of memory as a bitmap. Currently, such memory is relatively expensive and it is desirable to minimize its use.
A further problem with known image processing systems is that mechanical misregistration in the output device can cause gaps to occur at the transitions between different colors in the image. Color copiers, for example, generally require four (CMYK) different color passes to form a complete image. Photographic processors generally require three (red-green-blue) passes. If the colors are not laid down in perfect registration, unsightly gaps may occur at the edges of the image objects. In the past, efforts have been directed at resolving this problem by providing fixes in the output device itself, and the quality of the final image was restricted to the limitations of the output device with no way to improve thereon.
It would be advantageous to provide an interface between an image generation system and an image output device that overcomes the problems noted above. Specifically, such an interface should enable rasterized image data to be forwarded to the output device in such a manner that the idle time of the output device is kept to a minimum. Further, the memory requirements for buffering the data before it is sent to the output device should be minimized. In addition, processing of the raster image data prior to forwarding it to the output device should be provided in order to enhance the quality of the final printed image.
The present invention provides an interface for use between a graphic image server and an imaging device having the aforementioned and other advantages.